//
//  HTMLViewController.m
//  iGSS
//
//  Copyright 2010 Electronic Business Systems Ltd.
//
//  Licensed under the Apache License, Version 2.0 (the "License");
//  you may not use this file except in compliance with the License.
//  You may obtain a copy of the License at
//
//  http://www.apache.org/licenses/LICENSE-2.0
//
//  Unless required by applicable law or agreed to in writing, software
//  distributed under the License is distributed on an "AS IS" BASIS,
//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//  See the License for the specific language governing permissions and
//  limitations under the License.
//

#import "HTMLViewController.h"

#import "TextViewController.h"
#import "FormattingUtilities.h"
#import "GSSCommunicator.h"

@implementation HTMLViewController

@synthesize webView;

- (id)initWithFile:(GSSObject *)aFile inFolder:(GSSObject *)aFolder {
    if (self = [super initWithNibName:@"HTMLViewController" bundle:nil]) {
        self.file = aFile;
        self.folder = aFolder;
    }
    return self;
}

- (void)dealloc {
    [webView release];
    [super dealloc];
}

- (void)reloadData {
    NSString *path = self.file.dataCachePath;
    if ([[NSFileManager defaultManager] fileExistsAtPath:path]) {
        NSURL *url = [NSURL fileURLWithPath:path];
        [self.webView loadRequest:[NSURLRequest requestWithURL:url]];
    }
}


//MARK: -
//MARK: UIViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
                                               initWithTitle:LocalizedString(@"Source")
                                                       style:UIBarButtonItemStylePlain
                                                      target:self
                                                      action:@selector(edit)] autorelease];    
}

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self reloadData];
}


//MARK: -
//MARK: UIWebViewDelegate

- (void)webView:(UIWebView *)aWebView didFailLoadWithError:(NSError *)error {
	self.errorView.hidden = NO;
}


//MARK: -
//MARK: Button actions

- (void)edit {
    TextViewController *textViewController = [[TextViewController alloc] initWithFile:self.file
                                                                             inFolder:self.folder];
    [self.navigationController pushViewController:textViewController animated:YES];
    [textViewController release];
}

@end
